home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 April: Mac OS SDK / Dev.CD Apr 96 SDK / Dev.CD Apr 96 SDK1.toast / Development Kits (Disc 1) / OpenDoc / Sample Code / Sample Editors⁄Viewers / Panel Editor / Source / Panel.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-12-08  |  1.9 KB  |  96 lines  |  [TEXT/MPS ]

  1. /*
  2.     File:        Panel.h
  3.  
  4.     Contains:    Panel Classes Definition
  5.  
  6.     Written by:    Steve Smith
  7.     
  8.     Copyright:    © 1995 by Apple Computer, Inc., all rights reserved.
  9. */
  10.  
  11. #ifndef _PANEL_
  12. #define _PANEL_
  13.  
  14. // -- PanelEditor Includes --
  15.  
  16. #ifndef _FRAMEPE_
  17. #include "FramePE.h"
  18. #endif
  19.  
  20. #ifndef _PANELEDITORDEF_
  21. #include "PanelEditorDef.h"
  22. #endif
  23.  
  24. #ifndef _PANELEDITORGLOBALS_
  25. #include "PanelEditorGlobals.h"
  26. #endif
  27.  
  28. // -- OpenDoc Includes --
  29.  
  30. #ifndef _ODTYPES_
  31. #include <ODTypes.h>
  32. #endif
  33.  
  34.  
  35. class CListItem;
  36. class ODPart;
  37.  
  38. //=============================================================================
  39. // CPanel
  40. //=============================================================================
  41.  
  42. class CPanel : public CFrame
  43. {
  44.     public:
  45.     
  46.     // --- Init ---
  47.     CPanel();
  48.     ~CPanel();
  49.     void    InitPanel();
  50.     
  51.     // --- Layout ---
  52.     void    CreateFrames(Environment* ev);
  53.     void    RemoveAll(Environment* ev);
  54.     void    AddFrame(Environment* ev, ODFrame* containingFrame);
  55.     ODFrame* GetContainedFrame(Environment* ev, ODFrame* containingFrame);
  56.  
  57.     // --- Imaging ---
  58.     void    AddFacet(Environment* ev, ODFacet* containgingFacet);
  59.     void    Draw(Environment* ev, ODFacet* containgingFacet);
  60.     void    ChangeDisplayItem(Environment* ev, CListItem* item);
  61.     
  62.     protected:
  63.     
  64.     // --- Getters ---
  65.     ODRect        GetFrameBounds(Environment* ev, ODFrame* containingFrame);
  66.     Point        GetFrameOffset();
  67.     ODTypeToken    GetPresentation();
  68.     ODBoolean    MakeSubframe();
  69.     ODObjectType    GetFrameType();
  70.     
  71.     private:
  72.     ODBoolean        fHasFrames;
  73.  
  74. };
  75.  
  76. //-----------------------------------------------------------------------------
  77. // Inlines
  78. //-----------------------------------------------------------------------------
  79.  
  80. inline ODTypeToken CPanel::GetPresentation()
  81. { return gGlobals->fUndefinedPresentation; }
  82.  
  83.  
  84. inline ODBoolean CPanel::MakeSubframe()
  85. { return kODFalse; }
  86.  
  87.  
  88. inline Point CPanel::GetFrameOffset()
  89. { Point offset = {kPanelTopEdge+1,kPanelLeftEdge+1}; return offset; }
  90.  
  91.  
  92. inline ODObjectType CPanel::GetFrameType()
  93. { return kODNonPersistentFrameObject; }
  94.  
  95.  
  96. #endif